Map 是 Go 內置類型,是一種無序列的鍵值對(key-value)的集合,可以透過 key 快速查找到數據,是引用類型
map 尚未初始化默認為nil
使用 make() 來進行初始化
使用 len() 來查看 map 已存在的數據的長度
使用 delete() 來刪除 map 中的數據
使用 map[key] 來訪問數據或修改數據
package main
import "fmt"
func main() {
//尚未初始化 nil
var map1 map[int]string
//創建 map
var map2 = make(map[int]string)
//最常運用的方式
var map3 = map[string]int{"Go": 98, "Python": 87, "Java": 79, "Html": 93}
fmt.Println(map1)
fmt.Println(map2)
fmt.Println(map3)
fmt.Println(map1 == nil)
fmt.Println(map2 == nil)
fmt.Println(map3 == nil)
if map1 == nil {
map1 = make(map[int]string)
}
map1[1] = "Hello"
map1[2] = "World"
map1[3] = "Ruby"
fmt.Println(map1)
//使用key 獲取值
fmt.Println(map1[1])
//key不存在 取用string默認值
fmt.Println(map1[40])
//可以使用這種方式判斷是否存在
val, isExist := map1[40]
if isExist {
fmt.Printf("map1 key 40 存在 value 為%s\n", val)
} else {
fmt.Printf("map1 key 40 不存在 value 為 string 默認值 %s\n", val)
}
//修改數據
map1[2] = "change"
fmt.Println(map1)
//刪除數據
delete(map1,2)
fmt.Println
//長度
fmt.Println(len(map1))
}